1. Field of the Invention
The field of the invention is data processing, or, more specifically, methods, apparatus, and products for translating between a first communication protocol and a second communication protocol.
2. Description of Related Art
Ethernet protocol refers to one type of network system protocol that a local area network (LAN) may employ. A conventional specification for a LAN often employs Ethernet protocols. The Ethernet standard provides the hardware and software interfaces for network devices in a network system. Ethernet also provides for connection of a network system to the Internet via a cable modem, a DSL modem, or other communications interface. The IEEE 802.3 standard defines the basic structure and protocol of Ethernet network systems. A network fabric is the physical infrastructure of a network that enables the connection of one network device to another network device. Network fabrics typically include connective cabling such as twisted pair wiring, coaxial cable, fiber optic cable or other connectivity structures. Network fabrics may also include network switches, network routers, network hubs and other connective network devices that share a common bandwidth and network protocol such as Ethernet, Fiber Channel, or other network protocol.
Ethernet network devices transmit data with Ethernet frames that are commonly known as Ethernet data packets. Ethernet data packets are variable length data transmissions that typically exhibit lengths from 72 to 1518 bytes or longer jumbo frames. Each Ethernet data packet includes a header with the addresses of the source and destination network devices, a data area, and a trailer that includes error correction data. Other network protocols such as IP (Internet Protocol) and IPX (Internetwork Packet EXchange) may fragment longer data transmissions through special use of Ethernet frames or data packets. In a similar process, Fiber Channel frames or data packets provide the data transmission mechanism for the Fiber Channel protocol. Fiber Channel is currently a multi-gigabit network technology that network systems employ primarily for use by storage devices. Fiber Channel is a standard in the T11 Technical Committee of the International Committee for Information Technology Standards (INCITS) and the American National Standards Institute (ANSI). Despite the name, Fiber Channel signals may operate over copper wire as well as fiber optic cables. Fiber Channel Protocol (FCP) is the interface protocol of the Small Computer System Interface (SCSI) in a Fiber Channel network system.
One problem that exists when supporting multiple network protocols in a server is a connectivity issue between a server and other network devices such as a client. A server requires multiple adapter types and cabling to handle each network protocol type. This multiple protocol network system requires the use of different fabric managers for each protocol type as well. In other words, if a server in a network system employs both Ethernet and Fiber Channel protocols, the server typically requires an Ethernet adapter and a Fiber Channel adapter, as well as respective fabric managers for each protocol. Such a server may also require respective cabling for the Ethernet adapter and the Fiber Channel adapter.
Fiber Channel over Ethernet (FCoE) is a protocol for tunneling Fiber Channel (FC) frames over Ethernet frames. It is a new approach towards I/O consolidation by preserving all FC constructs, maintaining the same latency, security and traffic management attributes of FC. Data centers typically configure their servers with a pair of FC Host Bus Adapters (HBA) and two or more Ethernet Network Interface Cards (NIC), but with FCoE support, they can now be converged in to a single adapter. FCoE enables the consolidation of both SAN's and Ethernet traffic onto a converged network adapter (CAN), thereby reducing the number of adapters, cables and power consumption.
There are multiple ways to implement FCoE on a system. The easiest way is to have a PCIe to FCoE adapter card added to the system. However this implementation is expensive, since there is a need to buy a new card, and will consume some portion of the PCIe bandwidth.
Another solution could be to replace the existing NIC (Ethernet card) with a Converged Enhanced Ethernet card and implement the FCoE stack in software. This method also adds cost in replacing the NIC with a CEE card and will use up a large amount of Processor bandwidth and can impact the performance of the system.
In the Patent Application Publication US 2009/0034522 A1 “Transporting Fiber Channel over Ethernet” by Hayes et al. a method of converting the Ethernet adapter to the FCoE adapter by reusing the existing Ethernet adapter card and adding a FPGA (Field Programmable Gate Array) as a hardware assist engine for implementing FCoE is disclosed. Fiber Channel data comprises Fiber Channel data frames, primitive signals and primitive sequences. Transporting Fiber Channel data over Ethernet enables existing Ethernet equipment including Ethernet switches and Ethernet network interface cards (NICs) to connect to, communicate with and provide services for SANs that are based on Fiber Channel technology or have Fiber Channel interfaces. All of the above can be accomplished by using an apparatus that transforms Fiber Channel data into Ethernet frames and vice-versa. This apparatus is called a Fiber Channel over Ethernet Transformer (FCOE Transformer). Methods of implementing the FCoE Transformer include using independent Ethernet and Fiber Channel interfaces connected by a network processor, by using a Field Programmable Gate Array (FPGA), by using a special purpose ASIC, by software running on a Ethernet or Fiber Channel connected device, by hardware state machines, or by a combination of hardware and software. The FCoE Transformer can be placed on an Ethernet NIC, in an Ethernet MAC, in an Ethernet switch, in a Fiber Channel switch, in a Fiber Channel HBA, or any place in between a Fiber Channel device and an Ethernet device.
In the Patent Application Publication US 2009/0245791 A1 “Method and System for Fiber Channel and Ethernet Interworking” by Thaler et al. a method of reusing an existing Ethernet adapter card and embedding a Fiber Channel (FC) processor as an integrated chip in the Ethernet card for the FCoE implementation is disclosed. A network switch may be operable to perform Ethernet switching operations between a plurality of clients and server. The network switch may enable level 2 (L2) switching operations, for example. The network switch may be coupled to a host via a PCI root complex. The network switch may comprise one or more Ethernet ports, a MAC, a processor, a memory, a server provided MAC addressing (SPMA) table, an FC processor, and a plurality of FC ports. The processor and the FC processor may be a separate integrated chip embedded on a motherboard or may be embedded in a NIC. The FC processor may comprise suitable logic, interfaces, code, and/or one or more circuits that may be operable to receive and/or communicate FC packets via the plurality of FC ports from/to one or more FC switches, for example, FC switch via the Fiber Channel fabric. The FC processor may be operable to encapsulate FC packets into FCoE packets and/or encapsulate FCoE packets into FC packets.
In the Patent Application Publication US 2009/0052346 A1 “Method and Apparatus for Enabling an Adapter in a Network Device to Discover the Name of another Adapter of another Network Device in a Network System” by Brown et al. a network protocol translation between Ethernet and FCoE (CEE) via a FCoE bridge is disclosed. A method of positioning the FCoE Bridge in between server NIC and Ethernet switch adapter is also disclosed. Communication or transfer of network data from Fiber Channel devices such as Fiber Channel adapter to Ethernet devices such as enhanced Ethernet adapter requires Fiber Channel to Ethernet data packet translation. Here the FCoE Bridge acts as the translation mechanism for the transfer of data between Fiber Channel protocol and Ethernet protocol network data structures. The FCoE Bridge provides translation from Fiber Channel to Ethernet protocols in one direction. The FCoE bridge also provides translation in the opposite direction, namely from Ethernet to Fiber Channel protocols.